home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / lib / python2.4 / test / test_unpack.pyc (.txt) < prev    next >
Python Compiled Bytecode  |  2005-10-18  |  3KB  |  19 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyc (Python 2.4)
  3.  
  4. doctests = "\n\nUnpack tuple\n\n    >>> t = (1, 2, 3)\n    >>> a, b, c = t\n    >>> a == 1 and b == 2 and c == 3\n    True\n\nUnpack list\n\n    >>> l = [4, 5, 6]\n    >>> a, b, c = l\n    >>> a == 4 and b == 5 and c == 6\n    True\n\nUnpack implied tuple\n\n    >>> a, b, c = 7, 8, 9\n    >>> a == 7 and b == 8 and c == 9\n    True\n\nUnpack string... fun!\n\n    >>> a, b, c = 'one'\n    >>> a == 'o' and b == 'n' and c == 'e'\n    True\n\nUnpack generic sequence\n\n    >>> class Seq:\n    ...     def __getitem__(self, i):\n    ...         if i >= 0 and i < 3: return i\n    ...         raise IndexError\n    ...\n    >>> a, b, c = Seq()\n    >>> a == 0 and b == 1 and c == 2\n    True\n\nSingle element unpacking, with extra syntax\n\n    >>> st = (99,)\n    >>> sl = [100]\n    >>> a, = st\n    >>> a\n    99\n    >>> b, = sl\n    >>> b\n    100\n\nNow for some failures\n\nUnpacking non-sequence\n\n    >>> a, b, c = 7\n    Traceback (most recent call last):\n      ...\n    TypeError: unpack non-sequence\n\nUnpacking tuple of wrong size\n\n    >>> a, b = t\n    Traceback (most recent call last):\n      ...\n    ValueError: too many values to unpack\n\nUnpacking tuple of wrong size\n\n    >>> a, b = l\n    Traceback (most recent call last):\n      ...\n    ValueError: too many values to unpack\n\nUnpacking sequence too short\n\n    >>> a, b, c, d = Seq()\n    Traceback (most recent call last):\n      ...\n    ValueError: need more than 3 values to unpack\n\nUnpacking sequence too long\n\n    >>> a, b = Seq()\n    Traceback (most recent call last):\n      ...\n    ValueError: too many values to unpack\n\nUnpacking a sequence where the test for too long raises a different kind of\nerror\n\n    >>> class BozoError(Exception):\n    ...     pass\n    ...\n    >>> class BadSeq:\n    ...     def __getitem__(self, i):\n    ...         if i >= 0 and i < 3:\n    ...             return i\n    ...         elif i == 3:\n    ...             raise BozoError\n    ...         else:\n    ...             raise IndexError\n    ...\n\nTrigger code while not expecting an IndexError (unpack sequence too long, wrong\nerror)\n\n    >>> a, b, c, d, e = BadSeq()\n    Traceback (most recent call last):\n      ...\n    BozoError\n\nTrigger code while expecting an IndexError (unpack sequence too short, wrong\nerror)\n\n    >>> a, b, c = BadSeq()\n    Traceback (most recent call last):\n      ...\n    BozoError\n\n"
  5. __test__ = {
  6.     'doctests': doctests }
  7.  
  8. def test_main(verbose = False):
  9.     import sys as sys
  10.     test_support = test_support
  11.     import test
  12.     test_unpack = test_unpack
  13.     import test
  14.     test_support.run_doctest(test_unpack, verbose)
  15.  
  16. if __name__ == '__main__':
  17.     test_main(verbose = True)
  18.  
  19.